package com.b511.swpu.cementbackend.entity;

import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.validator.constraints.Range;

import javax.persistence.*;

@Entity
@Getter
@Setter
@Accessors(chain = true)
// 静液柱压力计算 对应表 CM_HYDROSTATICPRESSURE
@Table(name = "CM_HYDROSTATICPRESSURE")
public class CM_HydrostaticPressure extends BABaseEntity {
    @Id
    @GenericGenerator(name="cmHydrosGenerator", strategy="uuid")
    @GeneratedValue(generator="cmHydrosGenerator")
    @Column(name = "CM_HYDROSTATICPRESSURE_ID")
    private String CM_HydrostaticPressure_ID;

    @Basic
    @Column(name = "CASINGSIZE")
    private Double casingSize;

    @Basic
    @Column(name = "OBLIQUEDEPTH")
    private Double obliqueDepth;

    @Basic
    @Column(name = "VERTICALDEPTH")
    private Double verticalDepth;

    @Basic
    @Column(name = "CONDITION", length = 50)
    private String condition;

    @Basic
    @Column(name = "VOLUME")
    private Double volume;

    @Basic
    @Column(name = "FLUIDNAME", length = 50)
    private String fluidName;

    @Basic
    @Column(name = "FLUIDLOCATION", length = 50)
    private String fluidLocation;

    @Basic
    @Column(name = "FLUIDDENSITY")
    private Double fluidDensity;

    @Basic
    @Column(name = "HYDROSTATICPRESSURE")
    private Double hydrostaticPressure;

    @Basic
    @Column(name = "EMW")
    private Double EMW;

    @Basic
    @Column(name = "PUMPPRESSURE")
    private Double pumpPressure;

    @Basic
    @Column(name = "RISERPRESSURE")
    private Double riserPressure;

    @Basic
    @Column(name = "OUTPRESSURE")
    private Double outPressure;

    @Basic
    @Column(name = "PRESSURESUB")
    private Double pressureSub;

    @Basic
    @Column(name = "BA_WELL_ID")
    @JsonIgnore
    private Long ba_well_id;

    @ManyToOne
    @JoinColumn(name="cm_basic_id")
    private CM_Basic basic;

}
